package com.gxa.logistics.service.impl;

import com.github.pagehelper.PageHelper;
import com.gxa.logistics.common.base.PageWrapperDTO;
import com.gxa.logistics.common.base.RespResult;
import com.gxa.logistics.common.util.PageResultUtil;
import com.gxa.logistics.domain.dto.*;
import com.gxa.logistics.domain.entity.Cable;
import com.gxa.logistics.domain.vo.CableVO;
import com.gxa.logistics.domain.vo.ItemsVO;
import com.gxa.logistics.mapper.CableMapper;
import com.gxa.logistics.service.CableService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class CableServiceImpl implements CableService {
    @Autowired
    private CableMapper cableMapper;

    @Override
    public RespResult<PageWrapperDTO<CableVO>> list(CableReqListDTO cableReqListDTO) {
        // 使用分页插件
        PageHelper.startPage(cableReqListDTO.getPageNo(), cableReqListDTO.getPageSize());
        // 包装的分页返回对象
        PageWrapperDTO<CableVO> pageCommon = new PageWrapperDTO<>();
        List<CableVO> cableList = cableMapper.findCableByWhere(cableReqListDTO);
        // 设置分页返回对象
        PageResultUtil.setPageResult(cableList, pageCommon);
        return RespResult.success(pageCommon);
    }

    @Override
    public void insertCable(CableSaveDTO cableSaveDTO) {
        cableMapper.insertCable(cableSaveDTO);
    }

    @Override
    public void updateCable(CableUpdateDTO cableUpdateDTO) {
        cableMapper.updateCable(cableUpdateDTO);
    }


    @Override
    public void updateCable1(Integer item_num) {
        cableMapper.updateCable1(item_num);
    }



    @Override
    public void updateCable2(Integer item_num) {
        cableMapper.updateCable2(item_num);
    }



    @Override
    public void deleteCableByitemName(String item_name) {
        cableMapper.deleteCableByitemName(item_name);
    }



    @Override
    public RespResult<PageWrapperDTO<CableVO>> list(CableoReqListDTO cableoReqListDTO) {
        // 使用分页插件
        PageHelper.startPage(cableoReqListDTO.getPageNo(), cableoReqListDTO.getPageSize());
        // 包装的分页返回对象
        PageWrapperDTO<CableVO> pageCommon = new PageWrapperDTO<>();
        List<CableVO> cableList1 = cableMapper.findCableByDisStatus(cableoReqListDTO);
        // 设置分页返回对象
        PageResultUtil.setPageResult(cableList1, pageCommon);
        return RespResult.success(pageCommon);
    }

    @Override
    public RespResult<PageWrapperDTO<CableVO>> list(CabletReqListDTO cabletReqListDTO) {
        // 使用分页插件
        PageHelper.startPage(cabletReqListDTO.getPageNo(), cabletReqListDTO.getPageSize());
        // 包装的分页返回对象
        PageWrapperDTO<CableVO> pageCommon = new PageWrapperDTO<>();
        List<CableVO> cableList2 = cableMapper.findCableByDisStatus1(cabletReqListDTO);
        // 设置分页返回对象
        PageResultUtil.setPageResult(cableList2, pageCommon);
        return RespResult.success(pageCommon);
    }
}
